perm filename DISPLA.ME[UP,DOC]15 blob sn#716890 filedate 1983-07-01 generic text, type C, neo UTF8
COMMENT ⊗   VALID 00002 PAGES
C REC  PAGE   DESCRIPTION
C00001 00001
C00002 00002	     WAITS Display Service: support for various display terminal types
C00022 ENDMK
C⊗;
     WAITS Display Service: support for various display terminal types

The WAITS display service supports a certain collection of display types.
It is now fairly easy to support any other terminals meeting the
requirements discussed in the first few pages of DPYSER.TXT[1,ME].
However, the support has to be inserted into the system in the form of a
couple of tables of display-type description.  Mail your suggestions of
display types to support to ME; complete terminal descriptions, and
preferably manuals, are needed to create the tables.  Actual terminals are
useful for debugging the tables.  Also mail to ME any suggestions for
modifications or improvements, or descriptions of bugs, in the display
service.


  For a description of how to use a display that does not have an EDIT key
  to control the parity bit, see the file NOEDIT.BH[UP,DOC].  You should
  read that file before trying to use such a terminal in display mode.

  For a description of how to use an EDIT key to determine the CONTROL and
  META bits of each character typed, see the file DM.ME[UP,DOC].  That
  file also describes other details of using Datamedia displays.


Currently, the display terminals supported are:

Display type	Description
------------	-----------
  DM2500	basic Datamedia 2500 display (tabs are assumed), EDIT key
  DM128		DM 2500 with single-char tape mode mod, displays 128 graphics
  DM3025	Datamedia 3025 emulating 2500, some version
  DMWAITS	Datamedia 3025 modified with the WAITS keyboard and program
  C100A		Concept 100, version A (my designation: like DON's C100)
w C100B		Concept 100, version B (my designation: plain C100)
  TELERAY	Teleray 1000 series, some version, with EDIT key
  TELERB	Teleray 1000 series, some version, without EDIT key
  HP2648A	Hewlett-Packard 2648A, without EDIT key.
		(The 2648A support should generally work for the 2640 and
		the 2621, although TTY NO TABS may be needed.)
  HEATH19	Heath H19 (also known as Zenith Z19), without EDIT key
  TELEVIDEO	Televideo 912/920/950, without EDIT key
  AMBASSADOR	Ann Arbor Ambassador, with EDIT key
  ALTOTALK	ALTO running the TALK program
  SUN		SUN terminal, using ANSI standard, w/graphics, without EDIT key
  ANSI		ANSI standard display, without EDIT key

Each of the above terminal types comes with certain parameter defaults.
These parameters can be changed with various monitor commands and UUOs and
with a special set of LOGIN options (see the defaults under the LOGIN
options).  To find out the current settings for your terminal, run the
system program TTYSET with the monitor command:
	R TTYSET
To find out the settings for someone else's terminal, type the commad
	R TTYSET;nnn
where nnn is the TTY number of the terminal of interest.

Here are the monitor commands for changing these parameters.

  Command		Specifies
  ---------		-----------
  TTY <display type> <height> <width>  ;Display type, height and width.
  TTY PADBAUD dddd	;Baud rate used for padding calculations
  TTY PADCHAR ooo	;Octal value for character used for padding
  TTY [NO] TABS		;Whether the terminal has settable tabs
  TTY [NO] BS		;Whether the terminal can display rubouts
  TTY [NO] WAITS	;Whether terminal can show control chars (WAITS graphics)
  TTY [NO] BOLD		;Whether to reverse the line editor text's emphasis
  TTY [NO] ALTEMPHASIS	;Which emphasis form to use (3025s only so far)
  TTY [NO] ALTBELL	;Which terminal bell form to use (for C-100s soon)
  TTY [NO] HTOGGLE	;(no-edit-key mode) Whether the holding char should toggle
  TTY [NO] EDIT		;Whether terminal has EDIT key (controlling parity bit)
  NOEDIT		;The terminal has no EDIT key

(The last command above, NOEDIT works whether the terminal is generating
even or odd parity despite your being in EDIT mode, in which the parity
bit is taken as the EDIT key.  If the terminal Always turns the parity bit
on, then this command can be given by omitting the final "T": "NOEDI".)

In addition, the monitor command

  TTY NO <display type>

will tell the system to treat your terminal as a non-display.  Any display
type name can be used (from the display-type table above) no matter what
your current display type is.

Finally, the monitor command

  TTY INITIALIZE

will make the system re-initialize your display, keeping whatever display
type and parameters you have already set up.  This is useful for resetting
settable tabs that may have gotten clobbered somehow, or for restoring the
terminal to the correct operating state after being powered off, etc.  TTY
TABS will make the system simply reset your tab stops, but without
redrawing any text; TTY INITIALIZE will simulate a BREAK P as well as
re-initializing.



LOGIN options:

Here are the four general forms of the display-type setting LOGIN option:

	DISPLAY=<type>
	DISPLAY=<type>(<parameter value>,...,<parameter value>)
	FDISPLAY=<type>
	FDISPLAY=<type>(<parameter value>,...,<parameter value>)

where <type> can be any one of the official display types from the list
above, and any number of <parameter value>'s can be specified from the
list below.  The DISPLAY option will make your terminal a display no
matter what TTY line you are using (unless of course you're on a DD or
III), but the FDISPLAY option will make you a display only if you are
coming in on one of the Fast TTY lines, namely the 1200/150 baud dialup
lines and the LLL lines.

For any parameter not specified in the DISPLAY or FDISPLAY option, the
default value is used.  If conflicting parameter values are specified, the
result is undefined.  If you don't specify any parameters at all, then you
get all the defaults for the given display type, and in this case you
should omit the parentheses that normally surround the parameter list.

Note: If your LOGIN option "line" is too long to fit on one line, you can
use any number of lines, but each line should end at (i.e., with) a comma.

Further note: LOGIN does not validate the display type you specify, it
simply hands the name to the system.  If the type is unrecognized by the
system (e.g., because it is abbreviated to less than 6 characters), then
the option will be effectively ignored -- no warning will be issued.

    DISPLAY parameter	Specifies
    -----------------	---------
	HEIGHT=dd	decimal height
	WIDTH=dd	decimal width, should be multiple of 8
	PADCHAR=ooo	octal padding character
	PADBAUD=dddd	decimal baud rate for padding calculations
	TABS		terminal has (fixed every 8 or settable) tabs
	NOTABS		terminal has no tabs
	EDIT		terminal has an EDIT key (controlling the parity bit)
	NOEDIT		terminal does not have an EDIT key
	HTOGGLE		(for NOEDIT mode) make holding character toggle holding
	NOHTOGGLE	(for NOEDIT mode) holding character never unholds
	NOQUOTE		(for NOEDIT mode) set terminal input to Normal mode
	QUOTE		(for NOEDIT mode) set terminal input to Quote mode
	ALLQUOTE	(for NOEDIT mode) set terminal input to All-Quote mode
	BS		terminal can display rubout
	NOBS		terminal cannot display rubout
	WAITS		terminal can display control chars (WAITS graphics)
	NOWAITS		terminal cannot display control chars (WAITS graphics)
	BOLD		reverse the emphasis of text in the line editor
	NOBOLD		do not reverse line editor emphasis
	ALTEMPHASIS	use alternate form of emphasis (if any)
	NOALTEMPHASIS	use regular form of emphasis
	ALTBELL		use alternate form of bell (if any)
	NOALTBELL	use regular form of bell

Here are the CURRENT defaults for the current possible official display types.

	DISPLAY=DM2500(HEIGHT=24,WIDTH=80,PADCHAR=1,PADBAUD=1200,TABS,EDIT,
			BS,NOWAITS,BOLD,NOALTEMPHASIS,NOALTBELL)

	DISPLAY=DM128(HEIGHT=24,WIDTH=80,PADCHAR=1,PADBAUD=1200,TABS,EDIT,
			BS,WAITS,BOLD,NOALTEMPHASIS,NOALTBELL)

	DISPLAY=DMWAITS(HEIGHT=24,WIDTH=80,TABS,EDIT,
			BS,WAITS,BOLD,NOALTEMPHASIS,NOALTBELL)	;never padded

	DISPLAY=DM3025(HEIGHT=24,WIDTH=80,TABS,EDIT,
			BS,NOWAITS,BOLD,NOALTEMPHASIS,NOALTBELL)	;never padded

	DISPLAY=C100A(HEIGHT=24,WIDTH=80,PADCHAR=15,PADBAUD=1200,TABS,
			NOEDIT,HTOGGLE,NOQUOTE,
			BS,WAITS,BOLD,NOALTEMPHASIS,NOALTBELL)

	DISPLAY=C100B(HEIGHT=24,WIDTH=80,PADCHAR=15,PADBAUD=1200,TABS,
			NOEDIT,HTOGGLE,NOQUOTE,
			NOBS,NOWAITS,BOLD,NOALTEMPHASIS,NOALTBELL)

	DISPLAY=TELERAY(HEIGHT=24,WIDTH=80,PADCHAR=177,PADBAUD=9600,TABS,EDIT
			NOBS,NOWAITS,NOALTBELL)		;no emphasis available

	DISPLAY=TELERB(HEIGHT=24,WIDTH=80,PADCHAR=177,PADBAUD=9600,TABS,
			NOEDIT,HTOGGLE,NOQUOTE,
			NOBS,NOWAITS,NOALTBELL)		;no emphasis available

	DISPLAY=HEATH19(HEIGHT=24,WIDTH=80,PADCHAR=0,PADBAUD=9600,TABS,
			NOEDIT,HTOGGLE,NOQUOTE,
			NOBS,NOWAITS,BOLD,NOALTEMPHASIS,NOALTBELL)

	DISPLAY=HP2648A(HEIGHT=24,WIDTH=80,PADCHAR=177,PADBAUD=1200,TABS,
			NOEDIT,HTOGGLE,NOQUOTE,
			NOBS,NOWAITS,BOLD,NOALTEMPHASIS,NOALTBELL)
							;HP not currently padded

	DISPLAY=TELEVIDEO(HEIGHT=24,WIDTH=80,PADCHAR=177,PADBAUD=9600,TABS,
			NOEDIT,HTOGGLE,NOQUOTE,
			NOBS,NOWAITS,BOLD,NOALTEMPHASIS,NOALTBELL)

	DISPLAY=AMBASSADOR(HEIGHT=48,WIDTH=80,PADCHAR=0,PADBAUD=9600,TABS,
			EDIT,BS,NOWAITS,BOLD,NOALTEMPHASIS,NOALTBELL)

	DISPLAY=ALTOTALK(HEIGHT=24,WIDTH=80,PADCHAR=0,PADBAUD=0,TABS,
			EDIT,NOBS,WAITS,BOLD,NOALTEMPHASIS,NOALTBELL)

	DISPLAY=SUN(HEIGHT=28,WIDTH=88,PADCHAR=0,PADBAUD=0,TABS,
			NOEDIT,HTOGGLE,NOQUOTE,
			BS,WAITS,BOLD,NOALTEMPHASIS,NOALTBELL)

	DISPLAY=ANSI(HEIGHT=24,WIDTH=80,PADCHAR=177,PADBAUD=9600,TABS,
			NOEDIT,HTOGGLE,NOQUOTE,
			NOBS,NOWAITS,BOLD,NOALTEMPHASIS,NOALTBELL)

SPECIAL NOTES:

The TTY subcommands PADBAUD and PADCHAR have replaced the former TTY
subcommands DMBAUD and DMPAD, respectively.

The monitor command NOEDIT tells the system your display doesn't really
have an EDIT key (especially useful if you say TTY TELERAY but you don't
have an EDIT key).  This is NOT a TTY command, just say NOEDIT<cr>.  This
command will work even if your terminal is sending even or odd parity (or
no parity at all), despite the parity bit being taken as the EDIT key.  If
your terminal is sending the parity bit on for EVERY character, then omit
the "T" at the end of this command (i.e., type NOEDI<cr>).

Output to DMWAITS and DM3025 displays is never padded.  However, these
terminals are known to lose during insert/delete line operations when
running the WAITS display service at 9600 baud.  Padding doesn't help, but
makes it worse.

No emphasis is available on the Teleray terminals, and these terminals can
only display 96 distinct characters (from computer control), so the WAITS
graphics characters that occupy the octal codes from 001 to 037 are
displayed as lower case letters plus the characters "[\]↑←".  As a result,
there is no way to tell the difference (just by looking) between the pairs
of characters (e.g., "a" and "↓") that are displayed as the same graphic
on Teleray displays.  Let the user beware!

In certain cases, WAITS is not successful in obtaining the correct
emphasis (normal or reverse video) for text on HP2648A terminals.
sometimes the line editor, which should be reverse video, comes out as
normal.  However, the correct text IS displayed in the correct places on
the screen -- only the emphasis form is not always correct.  If this
proves annoying, use TTY NO BOLD to make the line editor use normal text.

The HP 2621 and the HP 2640 terminals are expected to work with the
2648A support (TTY HP2648A), although for one or both of the former
terminals it may be necessary to say TTY NO TABS or to avoid running
at baud rates above 1200 (currently no padding is used for HP terminals).

For C100 type terminals, the padding calculations are designed to work
correctly for 9600 baud.  However, because the calculations are linear
but the C100's need for padding isn't, lower actual baud rates specified
may result in excess padding (which is expensive at these low baud rates).
So if you are running at 1200 baud on a C100, you can get by with
TTY PADBAUD 400; and if you are running at 300 baud, you can probably
get by with TTY PADBAUD 0.  These padding baud rates can be specified
in your login option, e.g., FDISPLAY=C100B(PADBAUD=400).

The Ann Arbor Ambassador, which has a variable screen size, is assumed
already to be set to a 48-line screen when initialized by the system.
To use a different size screen, you must locally set the terminal to
the desired size and then inform the system of the size, e.g., with the
command TTY AMBASSADOR 24 for a 24-line screen.  An alternate emphasis
form of reverse video is available with the command TTY ALTEMPHASIS.